import sys
import time      # Зависисмоти для работы проекты
import pyautogui # Библиотека автоматизации действий клавиатуры установка.. в пакетнике pip install pyautogui
 
global pause
global task_i
global axe_i  
 
pause = 0.6


def chat_axe():
    pyautogui.keyDown('ctrl')
    pyautogui.press('N')
    pyautogui.keyUp('ctrl')
    
def chat_block():
    pyautogui.keyDown('ctrl')
    pyautogui.press('M')
    pyautogui.keyUp('ctrl')
    
    
    
 
def Cheak_task():
    global task_i 
    try:
        task_i = sys.argv[1]
        task_i = int(task_i)
        print('''Отработал по вводу данных''')    
    except: 
        task_i = 160
        task_i = int(task_i)
        print('''Отработал по дефолту''')
 
def Cheak_axe():
    global axe_i
    with open("axe.txt") as file:
        axe_i = file.read()
        axe_i = int(axe_i)
        print(f'''Прочность топора составляет {axe_i}''')
        if axe_i == 0:
            file_1 = open("axe.txt", "w")
            file_1.write(str(1561))
            file_1.close()
            axe_i = 1561
            print(f'''Прочность топора составляет {axe_i}''')
        else:
            pass
        
def Main():
    print("Начинаю ломать через 5")
    time.sleep(5)
    print("Начинаю ломать через 4")
    time.sleep(4)
    print("Начинаю ломать через 3")
    time.sleep(3)
    print("Начинаю ломать через 2")
    time.sleep(2)
    print("Начинаю ломать через 1")
    time.sleep(1)
    print("Начинаю ломать через 0")
    
    task = (task_i * 4 - 4)
    print(f"{task} - Текущая задача")
    axe = axe_i
    score = 0
    while(True):
        try:
            if score < task <= axe:
                print("Начал ломать дерево!")
                #Основное тело цикла - по поломки дерева
                pyautogui.move(10, 0, duration=0.5)      # move the mouse down 1 pixels.
                time.sleep(1)
                pyautogui.move(-10, 0, duration=0.5)       # move the mouse down 50 pixels.
                pyautogui.press('2') #Выбираем кокос
                time.sleep(pause)
                pyautogui.press('l') #ставим кокос в блок
                time.sleep(pause)
                pyautogui.press('3') #выбираем муку
                pyautogui.press('l') #выращиваем кокос
                pyautogui.press('1') #берем топор
                pyautogui.mouseDown()  # Нажать и удерживать левую кнопку мыши
                time.sleep(pause)
                pyautogui.mouseUp()    # Отпустить левую кнопку мыши
                score = score + 1
                #------------------------------------------------------------------ 
                pyautogui.press('4') #Выбираем кокос
                time.sleep(pause)
                pyautogui.press('l') #ставим кокос в блок
                time.sleep(pause)
                pyautogui.press('5') #выбираем муку
                pyautogui.press('l') #выращиваем кокос
                pyautogui.press('1') #берем топор
                pyautogui.mouseDown()  # Нажать и удерживать левую кнопку мыши
                time.sleep(pause)
                pyautogui.mouseUp()    # Отпустить левую кнопку мыши
                score = score + 1
                #------------------------------------------------------------------ 
                pyautogui.press('6') #Выбираем кокос
                time.sleep(pause)
                pyautogui.press('l') #ставим кокос в блок
                time.sleep(pause)
                pyautogui.press('7') #выбираем муку
                pyautogui.press('l') #выращиваем кокос
                pyautogui.press('1') #берем топор
                pyautogui.mouseDown()  # Нажать и удерживать левую кнопку мыши
                time.sleep(pause)
                pyautogui.mouseUp()    # Отпустить левую кнопку мыши
                score = score + 1
                #-------------------------------------------------------------------
                pyautogui.press('8') #Выбираем кокос
                time.sleep(pause)
                pyautogui.press('l') #ставим кокос в блок
                time.sleep(pause)
                pyautogui.press('9') #выбираем муку
                pyautogui.press('l') #выращиваем кокос
                pyautogui.press('1') #берем топор
                pyautogui.mouseDown()  # Нажать и удерживать левую кнопку мыши
                time.sleep(pause)
                pyautogui.mouseUp()    # Отпустить левую кнопку мыши
                score = score + 1
            elif axe < task:
                task = axe - 4
                print(f"{task} - Текущая задача")
            else:
                last_axe = axe - score
                file_1 = open("axe.txt", "w")
                file_1.write(str(last_axe))
                file_1.close()
                if last_axe <= 0:
                    print("Необходимо заменить топор!")
                    chat = chat_axe()
                    break
                else:
                    print(f'''Остаточная прочность топора {last_axe}''')
                    print(f"{task} - Текущая задача Было сломано блоков!")
                    print("Нужна замена блоков!")
                    chat = chat_block()
                    break
                    #Тут должен быть макрос который либо пишет в чат об окончании работы, либо шлет смску в телегу, о том что он закончил работу'')
        except KeyboardInterrupt:
            last_axe = axe - score
            file_1 = open("axe.txt", "w")
            file_1.write(str(last_axe))
            file_1.close()
            if last_axe <= 0:
                print("Необходимо заменить топор!")
                chat = chat_axe()
                break
            else:
                break
            
 
            
            
#---------------------- Основной Стартер Программы-----------------------------#
 
Cheak_task() # Получение задачи
time.sleep(1)
Cheak_axe() # Получеине прочности топора
time.sleep(1)
Main() # Основной мейн функции
